package com.twq.oo.classes

/**
 * Created by tangweiqun on 2017/11/27.
 * 1、一个带有main方法的单独对象可以成为一个scala程序的入口
 *
 * 2、和scala脚本不同的是，scala应用程序不是以表达式结尾的，scala脚本是以表达式结尾的
 *
 * 3、命令行运行scala程序的步骤
 * 3.1、scalac ApplicationEntryPoint.scala
 * 也可以使用fsc ApplicationEntryPoint.scala，fsc(即fast Scala compiler)，
 * 第一次执行fsc的时候，启动一个本地服务，在某个端口监听，将需要编译的文件通过这个端口发往服务进行编译
 * 当第二次执行fsc时只需要将指定的源文件发送到服务进行编译就行，相对于来说编译的速度会比scalac要快点
 * 每次scalac启动编译器的时候都需要取扫描依赖的jar包文件，而且还需要做一些初始化的工作
 * 3.2、scala ApplicationEntryPoint
 *
 * 4、scala编译器会将java.lang和scala两个包下面的类自动导入到任何的scala源文件中
 * 比如我们调用println，其实是调用scala.Predef.println()这个方法
 * Array是scala包里的
 * String是java.lang包里的
 *
 */
object ApplicationEntryPoint {
  def main(args: Array[String]): Unit = {
    println("Hello World" + args(0))

    AnotherService.service()
  }
}
